#ifndef BGV_PLAINTEXT_H_
#define BGV_PLAINTEXT_H_

#include "common.h"

/* *
 * @brief Plaintext 类，表示加密系统中的明文数据。
 *
 * @param mx：指向多项式系数的指针。
 * @param N：多项式数量。
 * @param slots：槽的数量。
 * @param l：每个多项式的层级长度。
 * @param scale：缩放因子，用于加密后的值的缩放。
 */
class Plaintext {
public:
    uint64_t *mx;
    long N;
    long slots;
    long l;
    Plaintext();
    Plaintext(uint64_t *mx, long N, long slots, long l);
    Plaintext(const Plaintext &ptxt);
    Plaintext &operator = (const Plaintext &o);
};

#endif
